<?php

$_RQ['op']=$_RQ['op']?$_RQ['op']:'list';
$return=array();
$setting=$this->plugin_setting('setting');
$tabs=array(
	array('op'=>'list','title'=>'分销商等级管理'),
	array('op'=>'edit','title'=>'添加/编辑等级'),
);
set_html('tabs',$tabs);
if($_RQ['op']=='list'){
	$params=array('uniacid'=>$_SESSION['uniacid']);
    $orderby='level asc';
	$total='';
	$return['list']=$this->getall('level',$params,array(),'',$orderby);
	foreach($return['list'] as &$item){
		$item['commissions']=$item['commissions']?json_decode($item['commissions'],true):array();
		$item['commission_0']=$item['commissions']['commission_0'];
		$item['commission_1']=$item['commissions']['commission_1'];
		$item['commission_2']=$item['commissions']['commission_2'];
		$item['xiaji_0']=$item['commissions']['xiaji_0'];
		$item['xiaji_1']=$item['commissions']['xiaji_1'];
		$item['xiaji_2']=$item['commissions']['xiaji_2'];
		$item['shangji_0']=$item['commissions']['shangji_0'];
		$item['shangji_1']=$item['commissions']['shangji_1'];
		$item['shangji_2']=$item['commissions']['shangji_2'];
		$item['teamfee']=$item['commissions']['teamfee'];
		$item['hehuo_rate']=$item['commissions']['hehuo_rate'];
		$item['conditions']='默认等级';
	}
	//添加默认等级
	$default_level=array(
		'id'=>'0',
		'title'=>'默认等级',
		'level'=>0,
		'conditions'=>'默认等级',
		'commissions'=>$this->plugin_setting('default_level')?$this->plugin_setting('default_level')['commissions']:array('commission_0'=>'0.00'),
	);
	$default_level['commission_0']=$default_level['commissions']['commission_0'];
	$default_level['commission_1']=$default_level['commissions']['commission_1'];
	$default_level['commission_2']=$default_level['commissions']['commission_2'];
	$default_level['xiaji_0']=$default_level['commissions']['xiaji_0'];
	$default_level['xiaji_1']=$default_level['commissions']['xiaji_1'];
	$default_level['xiaji_2']=$default_level['commissions']['xiaji_2'];
	$default_level['shangji_0']=$default_level['commissions']['shangji_0'];
	$default_level['shangji_1']=$default_level['commissions']['shangji_1'];
	$default_level['shangji_2']=$default_level['commissions']['shangji_2'];
	$default_level['teamfee']=$default_level['commissions']['teamfee'];
	$fee_num=$setting['fee_num']?:4;
	$fee_numfast=$fee_num-1;
	array_unshift($return['list'],$default_level);
	$htmls=array(
		'type'=>'list',
		'list'=>array('data'=>'list','tip'=>'[温馨提示]：
		</br>1、默认等级适合所有等级（当不匹配等级的时候，都按默认等级的比例算！）；
		</br>2、这里的设置优先于设置--基本设置的：《任务解锁》
		</br>3、<red>设置--基本设置--《任务解锁》--否开启任务解锁功能后，才有分销发放!</red>;
		</br>[感恩奖]:下级，下下级，下下下级所有收入（分销奖励，拼团奖励，分红奖励）的奖励比例；
		</br>[贡献奖]:上级，上上级，上上上级所有收入（分销奖励，拼团奖励，分红奖励）的奖励比例;
		</br>4、<red>考虑拼团失败，会员退款问题；所有佣金奖励都必须成团后才能发放！</red>
		','edit'=>false,'delall'=>false,'list'=>array(
			array('name'=>'title','title'=>'等级名称','type'=>'string'),
			array('name'=>'level','title'=>'等级权重','type'=>'string'),
			array('type'=>'string','set'=>'set','name'=>'commission_0','title'=>'1级(直推)','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			//array('type'=>'string','set'=>'set','name'=>'commission_1','title'=>'2级(间推)','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			//array('type'=>'string','set'=>'set','name'=>'commission_2','title'=>'3级(间推)','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','set'=>'set','name'=>'xiaji_0','title'=>'1级(感恩奖)','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','set'=>'set','name'=>'xiaji_1','title'=>'2级(感恩奖)','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','set'=>'set','name'=>'xiaji_2','title'=>'3级(感恩奖)','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','set'=>'set','name'=>'shangji_0','title'=>'上1级(贡献奖)','help'=>'拿上级的收益，填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','set'=>'set','name'=>'shangji_1','title'=>'上2级(贡献奖)','help'=>'拿上级的收益，填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','set'=>'set','name'=>'shangji_2','title'=>'上3级(贡献奖)','help'=>'拿上级的收益，填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','set'=>'set','name'=>'teamfee','title'=>'团队奖励'),
			array('type'=>'string','set'=>'set','name'=>'hehuo_rate','title'=>'加权分红%'),
		),'action'=>array(
			//array('op'=>'look_condition','title'=>'升级条件','type'=>'modal','show'=>array('level >'=>0)),
			array('op'=>'edit','title'=>'编辑','type'=>'href','show'=>array('level >'=>0)),
			array('op'=>'set_default','title'=>'设置默认佣金','type'=>'href','show'=>array('level'=>0)),
		)),
	);
	$return['htmls']=$htmls;
	exi($return);
}
if($_RQ['op']=='set'){
	$id=intval($_RQ['id']);
	$update=array();
	if($id){
		$item=$this->get('level',array('id'=>intval($id),'uniacid'=>$_SESSION['uniacid']));
	}else{
		$item=$this->plugin_setting('default_level');
	}
	$update['commissions']=json_decode($item['commissions'],true);
	$post=get_postdata();
	if(isset($post['commission_0'])){
		$update['commissions']['commission_0']=$post['commission_0'];
	}
	if(isset($post['commission_1'])){
		$update['commissions']['commission_1']=$post['commission_1'];
	}
	if(isset($post['commission_2'])){
		$update['commissions']['commission_2']=$post['commission_2'];
	}
	if(isset($post['xiaji_0'])){
		$update['commissions']['xiaji_0']=$post['xiaji_0'];
	}
	if(isset($post['xiaji_1'])){
		$update['commissions']['xiaji_1']=$post['xiaji_1'];
	}
	if(isset($post['xiaji_2'])){
		$update['commissions']['xiaji_2']=$post['xiaji_2'];
	}
	if(isset($post['shangji_0'])){
		$update['commissions']['shangji_0']=$post['shangji_0'];
	}
	if(isset($post['shangji_1'])){
		$update['commissions']['shangji_1']=$post['shangji_1'];
	}
	if(isset($post['shangji_2'])){
		$update['commissions']['shangji_2']=$post['shangji_2'];
	}
	if(isset($post['teamfee'])){
		$update['commissions']['teamfee']=$post['teamfee'];
	}
	if($id && $update){
		$update['commissions']=ijson_encode($update['commissions']);
		$this->pdo_update('level',$update,array('id'=>$id));
	}
	if(!$id && $update){
		$this->plugin_setting('default_level',$update);
	}
	exi('操作成功！');
}
if($_RQ['op']=='look_condition'){
	$item=$this->get('level',array('id'=>intval($_RQ['id']),'uniacid'=>$_SESSION['uniacid']),array('conditions'));
	if(!$item){
		exi('指定等级不存在！','error');
	}
	
	$item['conditions']=json_decode($item['conditions'],true);
	$return['item']=$item;
	if(!$item['conditions']){
		exi('该等级尚未设置升级条件！','error');
	}
	$htmls=array(
		'type'=>'look',
		'look'=>array(),
	);
	$level_up_types=$this->level_up_types;
	$current_level_up_types=$this->model()->current_level_up_types();
	foreach($current_level_up_types as $type){
		$htmls['look'][]=array('type'=>'string','name'=>'conditions.'.$type,'title'=>$level_up_types[$type]);
	}
	$return['htmls']=$htmls;
	exi($return);
}
if($_RQ['op']=='edit'){
	$id=intval($_RQ['id']);
	if($id){
		$item=$this->get('level',array('id'=>$id,'uniacid'=>$_SESSION['uniacid']));
		$item['conditions']=$item['conditions']?json_decode($item['conditions'],true):array('order_price'=>'0');
		$item['commissions']=$item['commissions']?json_decode($item['commissions'],true):array('commission_0'=>'0');
		$item['buy_goodsid']=$item['conditions']['buy_goodsid'];
	}else{
		$item=array(
			'title'=>'',
			'fennum'=>2,
			'conditions'=>array('fennum'=>'2'),
			'commissions'=>array('commission_0'=>'1'),
		);
	}
    $return['item']=$item;
	$htmls=array(
		'type'=>'edit',
		'post'=>'post',
		'desc'=>'等级设置',
		'edits'=>array(array('title'=>'基本信息','list'=>array(
			array('name'=>'title','title'=>'等级名称','type'=>'string'),
			array('name'=>'level','title'=>'等级权重','type'=>'string','help'=>'填写一百以内的数字，数字越大表示等级越高！不同等级的等级权重不得相等！'),
			array('name'=>'hehuo_rate','title'=>'加权分红%','type'=>'unitstring','unit'=>'%','help'=>'公司拿出全业绩的%出来平分给该等级的代理商！'),
		))),
	);
	//升级条件表单
	$condition_edit=array(
		'title'=>'升级条件(满足所有条件才升级)',
		'list'=>array(),
	);
	$level_up_types=$this->level_up_types;
	$current_level_up_types=$this->model('model')->current_level_up_types();
	foreach($current_level_up_types as $type){
		if($type=='level_num'){
			$condition_edit['list'][]=array('type'=>'select','name'=>'conditions.level_id','title'=>'选择指定等级','options'=>'level');
		}elseif($type=='buy_goodsid'){
			$condition_edit['list'][]=array('name'=>'buy_goodsid','title'=>'选择商品','type'=>'choose','action'=>'jy_newpingfee/get_goods/');
		}elseif($type=='buy_credit'){
			$condition_edit['list'][]=array('name'=>'conditions.credit_type','title'=>'虚拟币类型','type'=>'radio','options'=>'credit_type');
		}
		if($type!='buy_goodsid'){
			$condition_edit['list'][]=array('type'=>'string','name'=>'conditions.'.$type,'title'=>$level_up_types[$type]);
		}
	}
	$htmls['edits'][]=$condition_edit;
	$fee_num=$setting['fee_num']?:4;
	$fee_numfast=$fee_num-1;
	$commission_edit=array(
		'title'=>'佣金比例',
		'list'=>array(
			array('type'=>'string','name'=>'commissions.commission_0','title'=>'1级（直推）','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.commission_1','title'=>'2级（间推）','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.commission_2','title'=>'3级（间推）','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.xiaji_0','title'=>'1级（感恩奖）','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.xiaji_1','title'=>'2级（感恩奖）','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.xiaji_2','title'=>'3级（感恩奖）','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.shangji_0','title'=>'上1级（贡献奖）','help'=>'拿上级的收益，填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.shangji_1','title'=>'上2级（贡献奖）','help'=>'拿上级的收益，填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.shangji_2','title'=>'上3级（贡献奖）','help'=>'拿上级的收益，填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.teamfee','title'=>'团队成员拼团成功奖励'),
		),
	);
	$htmls['edits'][]=$commission_edit;
	$return['credit_type']=$this->gift_type;
	$return['level']=$this->pdo_getall('level',array('uniacid'=>$_SESSION['uniacid']),array('id','title'),'id');
	$return['htmls']=$htmls;
	exi($return);
}
if($_RQ['op']=='post'){
	$postdata=get_postdata();
	$postdata['conditions']['buy_goodsid']=$postdata['buy_goodsid'];
	$data=array(
		'title'=>trim($postdata['title']),
		'level'=>intval($postdata['level']),
		'hehuo_id'=>intval($postdata['hehuo_id']),
		'hehuo_rate'=>intval($postdata['hehuo_rate']),
		'fennum'=>intval($postdata['commissions']['fennum']),
		'conditions'=>$postdata['conditions']?ijson_encode($postdata['conditions']):'',
		'commissions'=>$postdata['commissions']?ijson_encode($postdata['commissions']):'',
	);
	if($data['level']<=0 || $data['level']>100){
		exi('请填写正确的等级权重值，1-100','error');
	}
	if(!$data['title']){
		exi('请填写标题','error');
	}
	
	$id=intval($postdata['id']);
	if($id){
		$this->update('level',$data,array('id'=>$id));
		exi('设置成功！','','list');
	}else{
		$data['uniacid']=$_SESSION['uniacid'];
		$this->insert('level',$data);
		exi('添加成功！','','list');
	}
}
if($_RQ['op']=='set_default'){
	//设置默认佣金比例
	if($_RQ['postdata']){
		$post=get_postdata();
		$this->plugin_setting('default_level',$post);
		exi('默认等级佣金设置成功！','','list');
	}
	$item=$this->plugin_setting('default_level');
	if(!$item){
		$item=array('commission_0'=>'0.00');
	}
	$return['item']=$item;
	$fee_num=$setting['fee_num']?:4;
	$fee_numfast=$fee_num-1;
	$htmls=array(
		'type'=>'edit',
		'desc'=>'设置默认佣金',
		'edit'=>array(
			array('type'=>'string','name'=>'commissions.commission_0','title'=>'1级（直推）','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.commission_1','title'=>'2级（间推）','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.commission_2','title'=>'3级（间推）','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.xiaji_0','title'=>'1级（感恩奖）','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.xiaji_1','title'=>'2级（感恩奖）','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.xiaji_2','title'=>'3级（感恩奖）','help'=>'填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.shangji_0','title'=>'上1级（贡献奖）','help'=>'拿上级的收益，填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.shangji_1','title'=>'上2级（贡献奖）','help'=>'拿上级的收益，填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.shangji_2','title'=>'上3级（贡献奖）','help'=>'拿上级的收益，填写数字表示实际佣金金额，填写百分数表示比例。例如填写1表示发放1元佣金，填写1%表示发放商品价格1%的佣金'),
			array('type'=>'string','name'=>'commissions.teamfee','title'=>'团队成员拼团成功奖励'),
		),
	);
	$return['htmls']=$htmls;
	exi($return);
}
if($_RQ['op']=='del'){

	$id=intval($_RQ['id']);
	if($id){
		pdo_delete('jy_newpingfee_level',array('id'=>$id));	
	}
	if(!$id){
		exi('默认等级不能删除！','error');
	}
	$del=trim($_RQ['del'],';');
	if($del){
		$del=explode(';',$del);
		foreach($del as $id){
			$id=intval($id);
			if($id){
				pdo_delete('jy_newpingfee_level',array('id'=>$id));
			}
		}
	}
	exi('删除成功！');
}
?>